**Release v0.1.0: Configuration system, enhanced testing, and version pinning behavior**#5
Merged
rahulkaushal04 merged 12 commits intomainfrom Feb 11, 2026
Merged
Conversation
…ure check command exits successfully even with updates available.
…utput formats and clarity in CI/CD integration
…dling and logging
… use exact matches (==) instead of minimum (>=); enhance configuration options and troubleshooting sections.
This commit introduces a new PowerShell script, setup_dev.ps1, to facilitate the setup of the development environment for depkeeper on Windows. The script automates the creation of a virtual environment, installation of development dependencies, setup of pre-commit hooks, and runs initial tests to verify the installation. It complements the existing setup_dev.sh script for macOS/Linux, ensuring a consistent setup experience across platforms.
This commit introduces a new marker for unit tests in the file, enhancing test categorization. Additionally, it refactors several test files to include unit test markers, improves the organization of test cases, and adds new tests for edge cases and error handling in various modules, including console, filesystem, HTTP client, logger, and version utilities. This enhances test clarity and maintainability.
This commit enhances the test suite for the and modules by introducing new fixtures for creating sample conflicts and packages, improving test coverage and organization. It also refactors existing tests to utilize parameterized testing for better clarity and maintainability. Additionally, the module tests are expanded with various fixture setups to cover a wider range of scenarios, ensuring comprehensive validation of the data models.
This commit introduces new unit tests for the DepKeeperConfig and DepKeeperContext classes, enhancing test coverage and ensuring correct behavior of configuration loading, context management, and error handling. The tests validate default and custom initialization, attribute setting, and the functionality of helper methods, contributing to improved reliability and maintainability of the codebase.
…rings and updating sample data This commit simplifies the test suite for the data store module by removing excessive documentation comments in the test functions and updating the sample package data to exclude unnecessary versions. The changes enhance readability and maintainability of the tests while ensuring comprehensive coverage of the functionality.
This commit finalizes the versioning for the depkeeper project by updating the version from 0.1.0.dev3 to 0.1.0 in both the pyproject.toml and __version__.py files, marking a stable release.
This commit introduces the tomli package with a version constraint of >=2.4.0 to both the pyproject.toml and requirements.txt files, ensuring compatibility for TOML file parsing in the project.
|
Codecov Report❌ Patch coverage is
📢 Thoughts on this report? Let us know! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
📌 Summary
This PR prepares depkeeper v0.1.0 for its first stable release.
It introduces a configuration system, enhances test coverage and structure, updates documentation across the project, improves CLI behavior, and changes the default version pinning strategy for dependency updates.
🧩 What Does This PR Change?
🚀 Core Features
Added
config.pywith support for:depkeeper.tomlpyproject.toml>=to==Improved CLI error handling, logging, and context management
Added Windows development setup script (
scripts/setup_dev.ps1)Updated version from
0.1.0.dev3→0.1.0🧪 Testing Improvements
Added:
test_config.pytest_context.pytest_main.pyExpanded coverage for:
Introduced test markers:
unitintegratione2eslownetworkRefactored tests to consistent Arrange-Act-Assert structure
Added Copilot testing guidelines
📚 Documentation Updates
Updated:
Updated README with:
Updated changelog under Unreleased
🐛 Bug Fixes
checkcommand exit code (now succeeds even if updates are available)checkcommand🎯 Motivation
This release establishes the v0.1.0 stable baseline with:
This provides a stable foundation for future feature expansion.
🧪 How to Test This
Configuration Testing
Expected: configuration file is detected and applied.
Version Pinning Behavior
depkeeper update requests grep "requests==" requirements.txtExpected: dependency is pinned using
==.Cross-Platform Setup
Windows
Linux/macOS
Test Suite
All tests should pass.
✔️ Checklist
Code Quality
mypyand resolved type issuesTesting
pytest)Documentation
Backwards Compatibility
Version Specifier Behavior
Default update behavior changed:
Before:
After:
Users preferring minimum specifiers can:
--min-specifier(if available)🔍 Related Issues